package service

import (
	"context"
	"yuanxin-admin/internal/dto"
	"yuanxin-admin/internal/vo"

	"gitee.com/botaoshow/yuanxin/web/utils/pages"
)

type ISysUserService interface {
	ImageCaptcha(context context.Context) (captchaKey string, captchaImage string, error error)
	Login(context context.Context, loginDto dto.SysUserLoginDto) (interface{}, error)
	Logout(context context.Context, token string) error
	ChangePassword(context context.Context, userId, oldPassword, newPassword string) (bool, error)
	UpdateStatus(context context.Context, id string, status string) (bool, error)
	QueryList(context context.Context, d *dto.SysUserQueryDTO) (*pages.Page[vo.SysUserVO], error)
	Save(context context.Context, d *dto.SysUserDTO) (bool, error)
	Update(context context.Context, id string, d *dto.SysUserDTO) (bool, error)
	Delete(context context.Context, id string) (bool, error)
}
